<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        //处理一层情况
        // var obj = {
        //     name:"zhangsan",
        //     obj2:{
        //         age:20,
        //         height:"120cm"
        //     }
        // }
        // function copy(arg){
        //     var newArg = Array.isArray(arg)?[]:{}
        //       for(var key in arg){
        //           newArg[key] = arg[key];
        //       }
        //       return newArg
        // }
        // var obj2 = copy(obj);
        // obj2.name = 111;
        // obj2.obj2.age = 30;
        // console.log(obj);

        // 深拷贝一
        // var obj = {
        //     name: "zhangsan",
        //     obj2: {
        //         age: 20,
        //         height: "120cm"
        //     }
        // }
        //     function copy(arg){
        //         var newArg = Array.isArray(arg)?[]:{}
        //         for(var key in arg){
        //             if(typeof arg[key]!=="object"){
        //                 newArg[key] = arg[key];
        //             }else{
        //                 var newArg2 = Array.isArray(arg)?[]:{};
        //                 for(var k in arg[key]){
        //                     newArg2[k]=arg[key][k];
        //                 }
        //                 newArg[key]=newArg2;
        //             }
        //         }
        //         return newArg;
        //     }

        //     var obj2 = copy(obj);
        //     obj2.obj2.age = 30;
        //     console.log(obj2);
        //     console.log(obj)


        // 深拷贝二
        // 1.数组或者对象转成字符串；JSON.stringify
        // var obj = {
        //     name:"zhanhsan",
        //     age:20
        // }
        // console.log(typeof obj);
        // var str = JSON.stringify(obj);
        // console.log(typeof str);
        //2.把转化后的字符串转成对象或者数组;JSON.parse
        // var obj = {
        //     name:"zhanhsan",
        //     age:20
        // }
        // var str = JSON.stringify(obj);
        // var obj1= JSON.parse(str);

        // 3.深拷贝
        var obj = {
            name: "zhanhsan",
            age: 20
        }
        function  deepcopy(arg){
                return JSON.parse(JSON.stringify(arg))

        }
        var obj2 = deepCopy(obj);
        obj2.obj2.age = 111;
        console.log(obj);


    </script>
</body>

</html>